<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
	<title>Use index sorting to speed up conjunctions | ElasticSearch 7.7 权威指南中文版</title>
	<meta name="keywords" content="ElasticSearch 权威指南中文版, elasticsearch 7, es7, 实时数据分析，实时数据检索" />
    <meta name="description" content="ElasticSearch 权威指南中文版, elasticsearch 7, es7, 实时数据分析，实时数据检索" />
    <!-- Give IE8 a fighting chance -->
    <!--[if lt IE 9]>
    <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
    <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
	<link rel="stylesheet" type="text/css" href="../static/styles.css" />
	<script>
	var _link = 'index-modules-index-sorting-conjunctions.html';
    </script>
</head>
<body>
<div class="main-container">
    <section id="content">
        <div class="content-wrapper">
            <section id="guide" lang="zh_cn">
                <div class="container">
                    <div class="row">
                        <div class="col-xs-12 col-sm-8 col-md-8 guide-section">
                            <div style="color:gray; word-break: break-all; font-size:12px;">原英文版地址: <a href="https://www.elastic.co/guide/en/elasticsearch/reference/7.7/index-modules-index-sorting-conjunctions.html" rel="nofollow" target="_blank">https://www.elastic.co/guide/en/elasticsearch/reference/7.7/index-modules-index-sorting-conjunctions.html</a>, 原文档版权归 www.elastic.co 所有<br/>本地英文版地址: <a href="../en/index-modules-index-sorting-conjunctions.html" rel="nofollow" target="_blank">../en/index-modules-index-sorting-conjunctions.html</a></div>
                        <!-- start body -->
                  <div class="page_header">
<strong>重要</strong>: 此版本不会发布额外的bug修复或文档更新。最新信息请参考 <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html" rel="nofollow">当前版本文档</a>。
</div>
<div id="content">
<div class="breadcrumbs">
<span class="breadcrumb-link"><a href="index.html">Elasticsearch Guide [7.7]</a></span>
»
<span class="breadcrumb-link"><a href="index-modules.html">Index modules</a></span>
»
<span class="breadcrumb-link"><a href="index-modules-index-sorting.html">Index Sorting</a></span>
»
<span class="breadcrumb-node">Use index sorting to speed up conjunctions</span>
</div>
<div class="navheader">
<span class="prev">
<a href="index-modules-index-sorting.html">« Index Sorting</a>
</span>
<span class="next">
<a href="ingest.html">Ingest node »</a>
</span>
</div>
<div class="section">
<div class="titlepage"><div><div>
<h2 class="title">
<a id="index-modules-index-sorting-conjunctions"></a>Use index sorting to speed up conjunctions<a class="edit_me edit_me_private" rel="nofollow" title="Editing on GitHub is available to Elastic" href="https://github.com/elastic/elasticsearch/edit/7.7/docs/reference/index-modules/index-sorting.asciidoc">edit</a>
</h2>
</div></div></div>
<p>Index sorting can be useful in order to organize Lucene doc ids (not to be
conflated with <code class="literal">_id</code>) in a way that makes conjunctions (a AND b AND …​) more
efficient. In order to be efficient, conjunctions rely on the fact that if any
clause does not match, then the entire conjunction does not match. By using
index sorting, we can put documents that do not match together, which will
help skip efficiently over large ranges of doc IDs that do not match the
conjunction.</p>
<p>This trick only works with low-cardinality fields. A rule of thumb is that
you should sort first on fields that both have a low cardinality and are
frequently used for filtering. The sort order (<code class="literal">asc</code> or <code class="literal">desc</code>) does not
matter as we only care about putting values that would match the same clauses
close to each other.</p>
<p>For instance if you were indexing cars for sale, it might be interesting to
sort by fuel type, body type, make, year of registration and finally mileage.</p>
</div>
<div class="navfooter">
<span class="prev">
<a href="index-modules-index-sorting.html">« Index Sorting</a>
</span>
<span class="next">
<a href="ingest.html">Ingest node »</a>
</span>
</div>
</div>

                  <!-- end body -->
                        </div>
                        <div class="col-xs-12 col-sm-4 col-md-4" id="right_col">
                        
                        </div>
                    </div>
                </div>
            </section>
        </div>
    </section>
</div>
<script src="../static/cn.js"></script>
</body>
</html>